
#ifndef stateGameH
#define stateGameH


#include "Constants.h"
#include "Animation.h"
#include "InputManager.h"
#include "Camera.h"
#include "SDLBase.h"
#include "Text.h"
#include "Audio.h"
#include "Timer.h"
#include "State.h"
#include "Question.h"
#include "Button.h"


/* A classe GameManager controlara o fluxo e toda logica especifica do jogo.
 */
class stateGame: public State
{
	int i, j, tam, img_x, img_y, index;
	int returnState;
	int numeroPerguntas, playerScore;
	int perguntas_opcoes[4];
	int escolha;
	int estadoInterno, botao_selecionado, respostaCerta, respostaWrong, respostaCheck;
	char numeroPerguntas_char[33], playerScore_char [33];
	string pergunta, resposta_certa, respostas_erradas[3];
	string line;
	string perguntas[4];
	Text *text_numeroPerguntas, *text_playerScore, *text_Pergunta, *text_Pergunta2;
	Text *text_Resposta[4];
	Sprite *background, *spriteButton_1, *spriteButton_2, *spriteButton_3, *spriteButton_4;
	Sprite *retangulo_1, *retangulo_2, *bordaScore, *mascote, *check, *wrong, *selecao;
	Sprite *dialogo1, *dialogo2, *dialogo3, *dialogo4;
	Audio *music, *sound;
	std::vector<Question*> question_array;
	Question *current_question;
	ifstream file;
	Button *button_1, *button_2, *button_3, *button_4;

public:
	void atualiza(int);
	void processEvents();

	void load();
	void unload();
	int update(int);
	void render();
};



#endif
